package com.yxdj.ai.service;

import dev.langchain4j.service.MemoryId;
import dev.langchain4j.service.SystemMessage;
import dev.langchain4j.service.UserMessage;
import dev.langchain4j.service.V;
import dev.langchain4j.service.spring.AiService;
import reactor.core.publisher.Flux;

/**
 * @author 韩总
 */
@AiService
public interface AssistantService {

    @SystemMessage(value = """
                你是一个专业的家庭维修工程师，请有礼貌的回答用户的问题
                如果用户询问与维修相关的问题，请给出专业的回答
                如果用户询问与维修不相关的问题，请委婉的拒绝回答用户的问题
                请说中文
                今天的日期：{{current_date}}
            """)
    Flux<String> chatToAi(@MemoryId String memoryId , @UserMessage String message, @V(value = "current_date") String currentDate);
}
